Stepper motor devices are widely used in various applications, such as printers, disk drives, toys, windshield wipers, fans, vibrating cell phones, robotic arms and video cameras. A stepper motor device includes a stepper motor and a stepper driver to provide driving signals to stator coils of the stepper motor to drive the stepper motor. In a typical bi-polar two phase stepper motor device, two 90-degree offset sinusoidal values are used to produce two driving signals, which are applied to the two stator coils of the motor. The first sinusoidal signal values are values derived from a perfect sine wave, while the second sinusoidal signal values are values derived from a perfect cosine wave. Using these sinusoidal values, the stepper motor can theoretically be driven precisely with respect to position and speed. However, due to imperfect step motor design and manufacturing, the use of these sinusoidal drive values may not produce the desired positional and speed performance of the stepper motor.
Therefore, there is a need for a stepper motor device that can be controlled with more precision.